This message summarizes the overall state of the vehicle. It can contains information regarding:
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Operation Mode | op_mode | Enumerated (Enum Operation Mode) | uint8_t | The overall operation mode. | Same as field type |
Errors – Count | error_count | - | uint8_t | Error count for monitored entitites. | Same as field type |
Errors – Entities | error_ents | - | plaintext | The monitored entities with error conditions. This is a comma separated list of entity names. | Same as field type |
Maneuver – Type | maneuver_type | - | uint16_t | Type of maneuver being executed, when in MANEUVER mode. The value is the IMC serialization ID of the corresponding maneuver. | Same as field type |
Maneuver – Start Time | maneuver_stime | s | fp64_t | Start time of maneuver being executed (Epoch time), when in MANEUVER mode. | Same as field type |
Maneuver – ETA | maneuver_eta | s | uint16_t | Estimated time for maneuver completion. The value will be 65535 if the time is unknown or undefined. | Same as field type |
Control Loops | control_loops | Bitfield (Bitfield Control Loops Mask) | uint32_t | Enabled control loops. | Same as field type |
Flags | flags | Bitfield (Bitfield Flags) | uint8_t | Same as field type | |
Last Error – Description | last_error | - | plaintext | Description of last error. | Same as field type |
Last Error – Time | last_error_time | s | fp64_t | Time of last error (Epoch time). | Same as field type |
The overall operation mode.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Service | SERVICE | Ready to service requests. |
1 | Calibration | CALIBRATION | Ongoing vehicle calibration. |
2 | Error | ERROR | Errors are set. |
3 | Maneuver | MANEUVER | A maneuver is executing. |
4 | External Control | EXTERNAL | External control is active. |
5 | Boot | BOOT | Booting system. |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0x01 | Maneuver Done | MANEUVER_DONE | - |
Vehicle command.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Type | type | Enumerated (Enum Type) | uint8_t | Same as field type | |
Request ID | request_id | - | uint16_t | Request ID | Same as field type |
Command | command | Enumerated (VehicleCommand-enum-command) | uint8_t | The type of command/action to be performed | Same as field type |
Maneuver | maneuver | - | message (Message-Group Maneuver) | Maneuver to be executed (for ‘EXEC_MANEUVER’ command) | Same as field type |
Calibration Time | calib_time | s | uint16_t | Amount of time to calibrate | Same as field type |
Info | info | - | plaintext | Complementary human-readable information for replies. | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Request | REQUEST | - |
1 | Reply – Success | SUCCESS | - |
2 | Reply – In Progress | IN_PROGRESS | - |
3 | Reply – Failure | FAILURE | - |
The type of command/action to be performed
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Execute Maneuver | EXEC_MANEUVER | Execute the maneuver specified in ‘maneuver’ field. |
1 | Stop Maneuver | STOP_MANEUVER | Stop ‘maneuver’ being executed. |
2 | Start Calibration | START_CALIBRATION | Start calibrating vehicle. |
3 | Stop Calibration | STOP_CALIBRATION | Stop calibrating vehicle. |
Controls monitoring of entity states in the vehicle.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Command | command | Enumerated (Enum Command) | uint8_t | Command. | Same as field type |
Entity Names | entities | - | plaintext | Comma separated list of entity names. | Same as field type |
Command.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Reset to defaults | RESET | - |
1 | Enable Monitoring | ENABLE | - |
2 | Disable Monitoring | DISABLE | - |
3 | Enable Monitoring (exclusive - disables all others) | ENABLE_EXCLUSIVE | - |
4 | Status Report | STATUS | - |
No description
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Entities monitored - Count | mcount | - | uint8_t | Number of entitities being monitored. | Same as field type |
Entities monitored - Names | mnames | - | plaintext | Comma separated list of all entity names being monitored. | Same as field type |
Entities with errors - Count | ecount | - | uint8_t | Number of entitities with non-critical errors. | Same as field type |
Entities with errors - Names | enames | - | plaintext | Comma separated list of all entity names with non-critical errors. | Same as field type |
Entities with critical errors - Count | ccount | - | uint8_t | Number of entitities with critical errors. | Same as field type |
Entities with critical errors - Names | cnames | - | plaintext | Comma separated list of all entity names with critical errors. | Same as field type |
Last Error – Description | last_error | - | plaintext | Description of last error. | Same as field type |
Last Error – Time | last_error_time | s | fp64_t | Time of last error (Epoch time). | Same as field type |
Definition of operational limits.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Field Indicator Mask | mask | Bitfield (Bitfield Operational Limits Mask) | uint8_t | Same as field type | |
Maximum Depth | max_depth | m | fp32_t | min=0 | |
Minimum Altitude | min_altitude | m | fp32_t | min=0 | |
Maximum Altitude | max_altitude | m | fp32_t | min=0 | |
Minimum Speed | min_speed | m/s | fp32_t | min=0 | |
Maximum Speed | max_speed | m/s | fp32_t | min=0 | |
Maximum Vertical Rate | max_vrate | m/s | fp32_t | min=0 | |
Area – WGS-84 Latitude | lat | rad | fp64_t | min=-1.5707963267948966, max=1.5707963267948966 | |
Area – WGS-84 Longitude | lon | rad | fp64_t | min=-3.141592653589793, max=3.141592653589793 | |
Area – Orientation | orientation | rad | fp32_t | Same as field type | |
Area – Width | width | m | fp32_t | Same as field type | |
Area – Length | length | m | fp32_t | Same as field type |
Command to obtain the operational limits in use by the vehicle.
This message has no fields.
Initiate overall calibration of a vehicle.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Duration | duration | s | uint16_t | Duration of calibration. | Same as field type |
Enable or disable control loops.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Enable | enable | Enumerated (Enum Enable) | uint8_t | Same as field type | |
Control Loop Mask | mask | Bitfield (Bitfield Control Loops Mask) | uint32_t | Control loop mask. | Same as field type |
Scope Time Reference | scope_ref | - | uint32_t | Unsigned integer reference for the scope of the control loop message. Scope reference should only be set by a maneuver. Should be set to an always increasing reference at the time of dispatching this message. Lower level controllers must inherit the same scope reference sent by maneuver. This same scope reference must be sent down to lower control layers. | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Disable | DISABLE | - |
1 | Enable | ENABLE | - |
Detect current vehicle medium.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Medium | medium | Enumerated (Enum Medium) | uint8_t | Current medium. | Same as field type |
Current medium.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Ground | GROUND | Vehicle is on the ground |
1 | Air | AIR | Vehicle is airborne |
2 | Water | WATER | Vehicle is at water surface |
3 | Underwater | UNDERWATER | Vehicle is underwater |
4 | Unknown | UNKNOWN | Vehicle medium is unknown |
Detected collision.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Collision value | value | m/s/s | fp32_t | Estimated collision acceleration value. | Same as field type |
Type | type | Bitfield (Bitfield Type) | uint8_t | Collision flags. | Same as field type |
Collision flags.
Value | Name | Abbreviation | Description |
---|---|---|---|
0x01 | X-axis | X | Collision detected in the x-axis |
0x02 | Y-axis | Y | Collision detected in the y-axis |
0x04 | Z-axis | Z | Collision detected in the z-axis |
0x08 | Impact | IMPACT | Sudden impact detected |
Monitoring variables to assert the formation tracking state, i.e., the mismatch between the real and the simulated aircraft position, the convergence state, etc.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Position Mismatch | PosSimErr | m | fp32_t | Mismatch between the real and the simulated aircraft position. | Same as field type |
Convergence | Converg | m | fp32_t | Convergence evalution variable. Value indicates the position error to which the system is converging, tacking into account the aircraft current position error and velocity. | Same as field type |
Stream Turbulence | Turbulence | m/s/s | fp32_t | Evaluation of the stream turbulence level, through the stream acceleration. | Same as field type |
Position Mismatch Monitor | PosSimMon | Enumerated (Enum Position Mismatch Monitor) | uint8_t | Position mismatch monitoring flag. | Same as field type |
Communications Monitor | CommMon | Enumerated (Enum Communications Monitor) | uint8_t | Communications monitoring flag. | Same as field type |
Convergence | ConvergMon | Enumerated (Enum Convergence) | uint8_t | Convergence monitoring flag. | Same as field type |
Position mismatch monitoring flag.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Ok | OK | - |
1 | Warning threshold | WRN | - |
2 | Limit threshold | LIM | - |
Communications monitoring flag.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Ok | OK | - |
1 | Timeout | TIMEOUT | - |
Convergence monitoring flag.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Ok | OK | - |
1 | Timeout | TIMEOUT | - |
Reports autopilot mode.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Autonomy Level | autonomy | Enumerated (Enum Autonomy Level) | uint8_t | Current mode autonomy level. | Same as field type |
Mode | mode | - | plaintext | Current mode name. | Same as field type |
Current mode autonomy level.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Manual | MANUAL | Autopilot has no control |
1 | Assisted | ASSISTED | Autopilot has some control |
2 | Auto | AUTO | Autopilot has full control |
Monitoring variables to assert the formation tracking state, i.e., the mismatch between the real and the simulated aircraft position, the convergence state, etc.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Type | type | Enumerated (Enum Type) | uint8_t | Indicates if the message is a request, or a reply to a previous request. | Same as field type |
Operation | op | Enumerated (Enum Operation) | uint8_t | Operation to perform. | Same as field type |
Position Mismatch | PosSimErr | m | fp32_t | Mismatch between the real and the simulated aircraft position. | Same as field type |
Convergence | Converg | m | fp32_t | Convergence evalution variable. Value indicates the position error to which the system is converging, tacking into account the aircraft current position error and velocity. | Same as field type |
Stream Turbulence | Turbulence | m/s/s | fp32_t | Evaluation of the stream turbulence level, through the stream acceleration. | Same as field type |
Position Mismatch Monitor | PosSimMon | Enumerated (Enum Position Mismatch Monitor) | uint8_t | Position mismatch monitoring flag. | Same as field type |
Communications Monitor | CommMon | Enumerated (Enum Communications Monitor) | uint8_t | Communications monitoring flag. | Same as field type |
Convergence | ConvergMon | Enumerated (Enum Convergence) | uint8_t | Convergence monitoring flag. | Same as field type |
Indicates if the message is a request, or a reply to a previous request.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Request | REQUEST | - |
1 | Report | REPORT | - |
Operation to perform.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Start | START | Start the formation maneuver. |
1 | Stop | STOP | Stop the formation maneuver. |
Position mismatch monitoring flag.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Ok | OK | - |
1 | Warning threshold | WRN | - |
2 | Limit threshold | LIM | - |
Communications monitoring flag.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Ok | OK | - |
1 | Timeout | TIMEOUT | - |
Convergence monitoring flag.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Ok | OK | - |
1 | Timeout | TIMEOUT | - |
This message is sent to trigger reports to a destination system.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Operation | op | Enumerated (Enum Operation) | uint8_t | Operation to perform. | Same as field type |
Communication Interface | comm_interface | Bitfield (Bitfield Communication Interface) | uint8_t | Communication interface to be used for reports. | Same as field type |
Period | period | s | uint16_t | Desired periodicity for scheduled reports. | Same as field type |
Destination System | sys_dst | - | plaintext | Destination Address to be filled where applicable. It should be interpreted differently depending on communication interface. | Same as field type |
Operation to perform.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Request Start of Reports | REQUEST_START | Request a system to periodically send reports through ‘interface’. The destination system will reply with a STARTED command. Periodicity will be defined by the field ‘period’. If applicable, the destination address is defined in field ‘dst’. |
1 | Report Started | STARTED | The destination system will reply a message with this operation everytime a report is successfully started. The periodicity of reports is indicated in the field ‘period’ while the communication interface to be used is described in field ‘interface’. If applicable, the destination address is defined in field ‘dst’. |
2 | Request Stop of Reports | REQUEST_STOP | Request a system to stop dispatching reports through a given communication interface described in ‘interface’. The destination system will reply with a STOPPED command. If applicable, the destination address is defined in field ‘dst’. |
3 | Report Stopped | STOPPED | The destination system will reply a message with this operation everytime a scheduled report is successfully stopped in a defined communication interface. If applicable, the destination address is defined in field ‘dst’. |
4 | Request Single Reports | REQUEST_REPORT | Request a system to issue a single report in a defined communication interface. The destination system will reply with a REPORT_ISSUED command. If applicable, the destination address is defined in field ‘dst’. |
5 | Single Report Sent | REPORT_SENT | The destination system will reply a single report request with this operation.If applicable, the destination address is defined in field ‘dst’. |
Communication interface to be used for reports.
Value | Name | Abbreviation | Description |
---|---|---|---|
0x01 | Acoustic | ACOUSTIC | Use acoustic communications |
0x02 | Satellite | SATELLITE | Use satellite communications |
0x04 | GSM | GSM | Use Global System for Mobile Communications |
0x08 | Mobile | MOBILE | Use mobile networks |
0x10 | Radio | RADIO | Use Radio telemetry |
Concise representation of entire system state.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Time Stamp | stime | s | uint32_t | Time, in seconds, since January 1st 1970. | Same as field type |
Latitude | latitude | ° | fp32_t | Latitude of the system, in degrees. | Same as field type |
Longitude | longitude | ° | fp32_t | Longitude of the system, in degrees. | Same as field type |
Altitude | altitude | dm | uint16_t |
|
Same as field type |
Depth | depth | dm | uint16_t |
|
Same as field type |
Heading | heading | - | uint16_t | Calculated as (rads * (0xFFFF / (2 * PI)) | Same as field type |
Speed | speed | cm/s | int16_t | Speed of the system in centimeters per second. | Same as field type |
Fuel | fuel | % | int8_t |
|
Same as field type |
Execution State | exec_state | % | int8_t |
|
Same as field type |
Plan Checksum | plan_checksum | - | uint16_t | Checksum of the plan being executed. | Same as field type |
Request data to be sent over a specified communication mean.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | The unique identifier for this request. | Same as field type |
Communication Mean | comm_mean | Enumerated (Enum Communication Mean) | uint8_t | Communication mean to be used to transfer these data. | Same as field type |
Destination System | destination | - | plaintext | The name of the system where to send this message. | Same as field type |
Deadline | deadline | - | fp64_t | Deadline for message transmission (seconds since epoch). | Same as field type |
Range | range | m | fp32_t | The meaning of this field depends on the operation and is explained in the operation’s description. | Same as field type |
Data Mode | data_mode | Enumerated (Enum Data Mode) | uint8_t | Type of data to be transmitted. Abort and Range mode can only be used with comm_mean=ACOUSTIC | Same as field type |
Message Data | msg_data | - | message | Data to be transmitted if selected data_mode is INLINEMSG. | Same as field type |
Text Data | txt_data | - | plaintext | Data to be transmitted if selected data_mode is TEXT. | Same as field type |
Raw Data | raw_data | - | rawdata | Data to be transmitted if selected data_mode is RAW. | Same as field type |
Communication mean to be used to transfer these data.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | WiFi | WIFI | - |
1 | Acoustic | ACOUSTIC | - |
2 | Satellite | SATELLITE | - |
3 | GSM | GSM | - |
4 | Any | ANY | - |
5 | All | ALL | - |
Type of data to be transmitted. Abort and Range mode can only be used with comm_mean=ACOUSTIC
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Inline Message | INLINEMSG | - |
1 | Text | TEXT | - |
2 | Raw Data | RAW | - |
3 | Abort | ABORT | - |
4 | Range | RANGE | - |
5 | Reverse Range | REVERSE_RANGE | - |
Reply sent in response to a communications request.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | Same as field type | |
Status | status | Enumerated (Enum Status) | uint8_t | Same as field type | |
Range | range | m | fp32_t | The meaning of this field depends on the operation and is explained in the operation’s description. | Same as field type |
Information | info | - | plaintext | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | In progress | IN_PROGRESS | - |
1 | Sent | SENT | - |
51 | Delivered | DELIVERED | - |
52 | Delivery is unknown | MAYBE_DELIVERED | - |
60 | Range received | RANGE_RECEIVED | - |
101 | Input Error | INPUT_FAILURE | - |
102 | Temporary Error | TEMPORARY_FAILURE | - |
103 | Permanent Failure | PERMANENT_FAILURE | - |
Request SMS Text sending.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | Same as field type | |
Destination | destination | - | plaintext | Recipient identifier (number or name). | Same as field type |
Timeout | timeout | s | fp64_t | Period of time to send message (in seconds). | Same as field type |
SMS Text | sms_text | - | plaintext | Same as field type |
Reply sent in response to a SMS sending request.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | Same as field type | |
Status | status | Enumerated (Enum Status) | uint8_t | Same as field type | |
Information | info | - | plaintext | Error description. | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Queued | QUEUED | - |
1 | Sent | SENT | - |
101 | Input Error | INPUT_FAILURE | - |
102 | Error trying to send sms | ERROR | - |
Reports VTOL current state.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
State | state | Enumerated (Enum State) | uint8_t | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Undefined | UNDEFINED | Vehicle is not configured as VTOL. |
1 | Transition to Fixed-Wing | TRANSITION_TO_FW | Vehicle is in transition from multicopter to fixed-wing. |
2 | Transition to MultiCopter | TRANSITION_TO_MC | Vehicle is in transition from fixed-wing to multicopter. |
3 | MutiCopter | MC | Vehicle is in multicopter state. |
4 | Fixed-Wing | FW | Vehicle is in fixed-wing state. |
Reports if motors are currently armed or disarmed.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
State | state | Enumerated (Enum State) | uint8_t | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Armed | ARMED | - |
1 | Disarmed | DISARMED | - |
Request data to be sent over a TCP connection
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | Same as field type | |
Destination | destination | - | plaintext | Recipient identifier (number or name). | Same as field type |
Timeout | timeout | s | fp64_t | Period of time to send message (in seconds). | Same as field type |
Message Data | msg_data | - | message | IMC message to be transmitted . | Same as field type |
Reply sent in response to a TCP sending request.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | Same as field type | |
Status | status | Enumerated (Enum Status) | uint8_t | Same as field type | |
Information | info | - | plaintext | Error description. | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Queued | QUEUED | - |
1 | Sent | SENT | - |
100 | Input Error | INPUT_FAILURE | - |
101 | Host Unknown | HOST_UNKNOWN | - |
102 | Can’t Connect | CANT_CONNECT | - |
103 | Error trying to send sms | ERROR | - |